{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Network Communities Detection "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In this notebook, we will explore some methods to perform a community detection using several algortihms. Before testing the algorithms, let us create a simple benchmark graph. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import networkx as nx \n",
    "G = nx.barbell_graph(m1=10, m2=4) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Matrix Factorization "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We start by using some matrix factorization technique to extract the embeddings, which are visualized and then clustered traditional clustering algorithms.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "SVD error (low rank): 0.052092\n"
     ]
    }
   ],
   "source": [
    "from gem.embedding.hope import HOPE \n",
    "gf = HOPE(d=4, beta=0.01) \n",
    "gf.learn_embedding(G) \n",
    "embeddings = gf.get_embedding() "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.manifold import TSNE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "tsne = TSNE(n_components=2) \n",
    "\n",
    "emb2d = tsne.fit_transform(embeddings)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x123e97880>]"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(embeddings[:, 0], embeddings[:, 1], 'o', linewidth=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We start by using a GaussianMixture model to perform the clustering"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.mixture import GaussianMixture"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "gm = GaussianMixture(n_components=3, random_state=0) #.(embeddings)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "labels = gm.fit_predict(embeddings)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "colors = [\"blue\", \"green\", \"red\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "nx.draw_spring(G, node_color=[colors[label] for label in labels])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Spectral Clustering"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We now perform a spectral clustering based on the adjacency matrix of the graph. It is worth noting that this clustering is not a mutually exclusive clustering and nodes may belong to more than one community"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "adj=np.array(nx.adjacency_matrix(G).todense())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "from communities.algorithms import spectral_clustering\n",
    "\n",
    "communities = spectral_clustering(adj, k=3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In the next plot we highlight the nodes that belong to a community using the red color. The blue nodes do not belong to the given community"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABGoAAAEuCAYAAADWRvTbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAACvhUlEQVR4nOzdd3hT5f/G8XfSpLtlbyp77yF7CjKUISgOwAmyFAeKA0FUEEWQrwxFAVEEwQWCgAoie++995IN3TM5vz+O9CfKaJO06bhf19WrtM158kmBnOQ+z/N5LIZhGIiIiIiIiIiIiNdZvV2AiIiIiIiIiIiYFNSIiIiIiIiIiGQQCmpERERERERERDIIBTUiIiIiIiIiIhmEghoRERERERERkQxCQY2IiIiIiIiISAahoEayhREjRtCzZ09vlyEiIhmUzhMiInI7Ok9IelJQI/8xc+ZMateuTXBwMIUKFaJt27asXr3a22W5ZdCgQUyZMgWA48ePY7FYSEpKcnm8mTNnUqxYMYKCgnjggQe4cuWKp0oVEcnwdJ64vb/++osOHTpQuHBhLBYLx48f92ClIiIZn84Tt7dw4UIaNWpEzpw5KViwID179iQyMtKT5Uomp6BGbjBmzBheeuklBg0axPnz5zl58iT9+vVj3rx53i4tw9izZw+9e/dm+vTpnD9/nsDAQPr16+ftskRE0oXOE3dmtVpp06YNs2fP9nYpIiLpTueJOwsPD2fw4MGcPXuWffv2cebMGQYOHOjtsiQjMUT+du3aNSMoKMj44YcfbnmbuLg448UXXzQKFSpkFCpUyHjxxReNuLg4wzAMY9myZUaRIkWMkSNHGvny5TMKFixo/Pzzz8bChQuNMmXKGLly5TLef//95LGGDh1qPPTQQ0a3bt2M4OBgo3LlysaBAweMESNGGPny5TOKFi1qLFq0KPn2xYoVM/74448bju/WrZthGIZx7NgxAzC+/vprIywszMiTJ48xfPjwm942LCzMAIygoCAjKCjIWL58uZErVy5j586dybc/f/68ERAQYFy4cOE/v4M333zTeOyxx5K/Pnz4sGG3242IiIgU/65FRDIjnSdSdp64LjEx0QCMY8eOpfA3LCKSuek8kbrzxHWzZ882KleufMfbSfahGTWSbN26dcTFxdGpU6db3ub9999n/fr1bN++nR07drBx40aGDx+e/PNz584RFxfHmTNneO+993j22WeZMWMGW7ZsYdWqVQwbNoxjx44l337+/Pk8/vjjXL16lRo1atC6dWucTidnzpzh7bffpnfv3ql6DKtXr+bAgQP8+eefvPfee+zbt+8/t1m5ciUA165dIyoqiqZNm/Loo48yY8aM5NvMmjWLFi1akC9fvv8cv2fPHqpVq5b8dalSpfD19eXgwYOpqlVEJLPReSJl5wkRkexK5wnXzhMrV66kUqVKqapTsjYFNZLs8uXL5M2bF5vNdsvbfPvtt7z99tvkz5+ffPnyMXToUKZPn578c7vdzltvvYXdbufRRx/l0qVLvPjii4SEhFCpUiUqVqzIjh07km/fuHFjWrdujc1mo0uXLly8eJE33ngj+fjjx49z7dq1FD+GoUOHEhAQQLVq1ahWrdoN93U7Tz75JLNmzcIwDACmT5/O448/ftPbRkVFkSNHjhu+lyNHDq0rFZEsT+eJlJ0nRESyK50nUn+e+OOPP5g2bRrvvfdeimuUrE9BjSTLkycPly5dum1TrLNnz1KsWLHkr4sVK8bZs2dvGMPHxweAgIAAAAoUKJD884CAAKKiopK//vfP8ubN+5/j/3n7OylYsGDynwMDA1N8bN26dQkMDGT58uXs37+fw4cP06FDh5veNjg4mIiIiBu+FxERQUhISIrrFBHJjHSeSNl5QkQku9J5InXnifXr19O1a1d++uknypYtm+IaJetTUCPJ6tevj5+fH3Pnzr3lbQoXLsyJEyeSvz558iSFCxdOh+ogKCiImJiY5K/PnTvn0jgWi+Wm33/yySeZMWMG06dP56GHHsLf3/+mt6tUqdINyfrRo0eJj4/Xk6uIZHk6T6TsPCEikl3pPJHy88S2bdvo0KEDU6dOpUWLFi7VIVmXghpJliNHDt577z2ee+455s6dS0xMDImJifz222+89tprADz22GMMHz6cixcvcunSJd577z26d++eLvVVr16d7777jsTERDZv3sxPP/3k0jj58uXDarVy9OjRG77fvXt3fv75Z2bMmMETTzxxy+O7devG/PnzWbVqFdHR0bz99tt07txZM2pEJMvTeSJl5wmAuLg44uPjAYiPjycuLs6lWkREMhOdJ1J2nti9ezdt2rRh/PjxtG/f3qUaJGtTUCM3eOWVVxgzZgzDhw8nX758hIWFMWHCBB544AEABg8e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cuQImzdvZuzYseqxJCIi6WLOnDk8+OCD3i5DRLIpLX3ykKlTpzJ79mwWLlzo7VJEbikpKYkSJUowf/58qlev7u1yJAu7cAGKFYO4OFdHiOeee55izJg3qFatmidLExERuS3DMJJfL1WpUsXb5YhINqQZNR5gGAaffPIJL774ordLEbktm81Gnz59NKtG0tykSe4d7+tro3nzWQppREQk3W3duhW73U7lypW9XYqIZFOaUeMBy5Yt47nnnmPPnj1Y1AJeMrgLFy5QtmxZjhw5Qp48ebxdjmRBTqe53falS+6NkzevuZ23dt0WEZH0NGjQIJxOJx9++KG3SxGRbEovfz1g7NixvPDCCwppJFPInz8/HTt2ZMqUKd4uRbKoy5chMtL9caKizLFERETSi2EYzJ49W/1pRMSrFNS46ejRo6xZs4bHH3/c26WIpFj//v357LPPSLq+tY6IB4WHgyd2gLfZ4No198cRERFJqb179xIbG0vt2rW9XYqIZGMKatw0YcIEnnnmGYKCgrxdikiK1a5dm8KFCzN//nxvlyJZkL+/ufzJXU4nBAS4P46IiEhKzZ49m86dO2umvIh4lYIaN0RGRjJt2jSee+45b5cikmraqlvSSt684InJWklJoDZKIiKSnubMmUPnzp29XYaIZHMKatzw9ddfc88993DXXXd5uxSRVHvooYfYt28fu3fv9nYpksX4+0O7du41AbZazTE0o0ZERNLLkSNHOHfuHA0bNvR2KSKSzSmocZHT6WT8+PHaklsyLV9fX3r37s2ECRO8XYpkQa++6l7IEhBgjiEiIpJeZs+ezQMPPICPj4+3SxGRbE5BjYt+++03QkJClLhLpta7d2++//57rl696u1SJIupVw+KFgVXlvhbLOax9ep5vi4REZFb0bInEckoFNS4aOzYsbz00ktqNCaZWqFChWjbti1fffWVt0uRLMZigXnzICQk9ceGhJjH6ulVRETSy+nTpzl06BDNmzf3dikiIgpqXLFnzx527drFww8/7O1SRNzWv39/Pv30UxwOh7dLkSymXDlYuhRy5kxZvxqr1bztn3+ax4qIiKSXn3/+mXbt2mG3271dioiIghpXjBs3jj59+uDn5+ftUkTcVq9ePXLlysXvv//u7VIkC6pVC7Ztg86dwc/v5n1rrNZ4/PzM22zbBrVrp3+dIiKSvc2ePZsH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\n",
      "text/plain": [
       "<Figure size 1440x360 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20, 5))\n",
    "\n",
    "for ith, community in enumerate(communities):\n",
    "    cols = [\"red\" if node in community else \"blue\" for node in G.nodes]\n",
    "    plt.subplot(1,3,ith+1)\n",
    "    plt.title(f\"Community {ith}\")\n",
    "    nx.draw_spring(G, node_color=cols)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The next command shows the node ids belonging to the different communities"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[{14, 15, 16, 17, 18, 19, 20, 21, 22, 23},\n",
       " {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11},\n",
       " {12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}]"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "communities"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Non Negative Matrix Factorization "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here, we again use matrix factorization, but now using the Non-Negative Matrix Factorization, and associating the clusters with the latent dimensions."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.decomposition import NMF"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "nmf = NMF(n_components=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/deusebio/.pyenv/versions/3.8.6/envs/ml-book-5/lib/python3.8/site-packages/sklearn/decomposition/_nmf.py:312: FutureWarning: The 'init' value, when 'init=None' and n_components is less than n_samples and n_features, will be changed from 'nndsvd' to 'nndsvda' in 1.1 (renaming of 0.26).\n",
      "  warnings.warn((\"The 'init' value, when 'init=None' and \"\n"
     ]
    }
   ],
   "source": [
    "emb = nmf.fit_transform(adj)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1264a0400>]"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(emb[:, 0], emb[:, 1], 'o', linewidth=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "By setting a threshold value of 0.01, we determine which nodes belong to the given community."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "communities = [set(np.where(emb[:,ith]>0.01)[0]) for ith in range(2)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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NNIOeBaXmJjI1KlTGT16NG63m4EDB9K1a1dCvZn6ICIimc7FUpQhQ4bQuXPnQIcjcsmzzz7LgQMHmD59us4ppJES8GzCMAyWLFnC6NGj+fXXX3n00Ud5/PHHKVKkSKBDExERH6kURTKbZcuW0blzZzZv3qwzaV5QCUo2YbFYaNasGXPmzGHlypWcO3eOKlWq0K1bNzZu3Bjo8ERExAcqRZHMJDo6mocffphPPvlEybeXtAOejZ09e5ZPP/2UsWPHUrZsWZ566inatGmDzWYLdGgiIpJGSUlJ1K1bl6FDh6oURQKqe/fuOBwOPv7440CHkmUpAc8BUlJSmDFjBqNHj+bMmTM8+eSTdO/enYiIiECHJiIiaaBSFAm0WbNmMWjQIDZt2kR4eHigw8mylIDnIIZhsGbNGt5//30WLVrEI488Qv/+/SldunSgQxMRkVR64YUX+OOPP5g5c6YOvkmGioqKolatWsycOZObb7450OFkaaoBz0EsFgs333wz3377Lb///jsWi4W6dety//33s3r1atUViohkAcOHD2f37t1MnTo10KFIDmIYBr1796Znz55Kvv1AO+A5XExMDP/73/8YM2YMkZGRPPXUU7Rv356goKBAhyYiIlehUhTJaJ9++ikfffQRa9euxeFwBDqcLE8JuADgdrv58ccfGT16NHv37uWJJ57g0UcfJW/evIEOTURErkClKJJR9u3bx0033cTSpUupWrVqoMPJFlSCIgDYbDbatWvH0qVL+f7779m+fTtly5bl8ccfZ9euXX67T2IiREeD3vaJiPjmYinKN998E+hQJBtzu91069aNIUOGKPn2IyXg8h916tThiy++YPv27eTNm5fGjRvTpk0bFi1a5FWd+ObN0K0bhIZCeDhERoLdDrVrwzffQHJyOvwSIiLZXHBwMJ999hkDBw4kKioq0OFINvX222/jcDgYOHBgoEPJVlSCIteVkJDAlClTeP/997Hb7QwcOJBOnToREhJyzet27IAHH4Rdu8wk2+3+72MiIsBigTffhH790ukXEBHJxoYOHcqff/6pUhTxu02bNtGiRQvWr19PyZIlAx1OtqIEXFLNMAx+/vlnRo8ezaZNm+jXrx99+/alUKFC/3nsr7/CHXdAbGzqyk2cTnj0UXjvPTMhFxGR1ElKSqJOnToMGzaMTp06BTocySYSExOpX78+gwYNolu3boEOJ9tRCYqkmsVioWXLlsyfP5/Fixdz7NgxKleuTI8ePdi6deulx+3eDS1aQExM6mu94+Phk0/MnXAREUk9laJIenjxxRepWLEiDz30UKBDyZa0Ay4+OX36NB9//DEffvghVapU4amnnuKtt+5ixQqLVwctQ0LMBL54cf/HKiKSnakURfxl2bJldOrUiS1bthAZGRnocLIlJeDiF8nJyXz77be8+eY0/vhjOoZx7frwqwkOhmeegdde83OAIiLZnEpRxB+io6OpUaMGH374Ia1btw50ONmWEnDxq6efNhg71sDl8r66KU8eOHkSNAtIRCRtfvvtN+6++262bNlyxfM5ItfTvXt3HA4HH3/8caBDydZUAy5+9c03Fp+SbwCPB9au9VNAIiI5SP369enZsyf9+vXzqm2s5GyzZ89mxYoVvPvuu4EOJdtTAi5+df68f9Y5fdo/64iI5DQjRoxg586dTJs2LdChSBZy4sQJ+vXrxxdffEF4eHigw8n2lICLX/lrw+VKPcNFROT6LnZFGTBgACdOnAh0OJIFGIZB79696d69OzfffHOgw8kRlICLX/njTbNheMib1/d1RERyqvr169OjRw+VokiqTJo0icOHD/PSSy8FOpQcQwm4+FWrVmCz+bZGTEwiAwc2ZPDgwSxdupRkzaoXEUmzl156SaUocl379u1jyJAhTJkyBYfDEehwcgx1QRG/2rQJGjUyB+t4w26Hhx/20KPHWubPn8/8+fPZtWsXt912G61ataJly5aULl3anyGLiGRb69ato02bNuqKIlfkdrtp2rQp9913H08//XSgw8lRlICL31WvDtu2eXdtaCisXw9Vqvz9Z6dOneKXX35h/vz5LFiwgHz58tGqVStatWpFkyZNCA0N9U/gIiLZ0JAhQ9i5cyczZszQgB65zKhRo5g/fz6LFi3CalVRREZSAi5+t3KlOYo+ISFt1zmd0KEDfP751R/j8XjYuHHjpd3xTZs20bhxY1q1asWdd95JhQoV9AIjIvIPFwf0vPjiizz44IOBDkcyic2bN3P77bezfv16SpUqFehwchwl4JIupk2D7t1Tn4Q7nWbpyty5ZhlKap0/f55FixZdSsiDgoIu7Y7fdtttREREePcLiIhkIypFkX9KTEykfv36DBo0iG7dugU6nBxJCbikm19+gfvvN1sKxsZe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\n",
      "text/plain": [
       "<Figure size 1440x360 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20, 5))\n",
    "\n",
    "for ith, community in enumerate(communities):\n",
    "    cols = [\"red\" if node in community else \"blue\" for node in G.nodes]\n",
    "    plt.subplot(1,3,ith+1)\n",
    "    plt.title(f\"Community {ith}\")\n",
    "    nx.draw_spring(G, node_color=cols)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Although the example above does not show this, in general also this clustering method may be non-mutually exclusive, and nodes may belong to more than one community"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Louvain and Modularity Optimization"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here, we use the Louvain method, which is one of the most popular methods for performing community detection, even on fairly large graphs. As described in the chapter, the Louvain method basically optimize the partitioning (it is a mutually exclusing community detection algorithm), identifying the one that maximize the modularity score, meaning that nodes belonging to the same community are very well connected among themself, and weakly connected to the other communities. \n",
    "\n",
    "**Louvain, unlike other community detection algorithms, does not require to specity the number of communities in advance and find the best, optimal number of communities.**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "from communities.algorithms import louvain_method\n",
    "communities = louvain_method(adj)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "c = pd.Series({node: colors[ith] for ith, nodes in enumerate(communities) for node in nodes}).values\n",
    "nx.draw_spring(G, node_color=c)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "communities"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Girvan Newman"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The Girvan–Newman algorithm detects communities by progressively removing edges from the original graph. The algorithm removes the “most valuable” edge, traditionally the edge with the highest betweenness centrality, at each step. As the graph breaks down into pieces, the tightly knit community structure is exposed and the result can be depicted as a dendrogram.\n",
    "\n",
    "**BE AWARE that because of the betweeness centrality computation, this method may not scale well on large graphs**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from communities.algorithms import girvan_newman\n",
    "communities = girvan_newman(adj, n=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "c = pd.Series({node: colors[ith] for ith, nodes in enumerate(communities) for node in nodes}).values\n",
    "nx.draw_spring(G, node_color=c)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "communities"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "ml-book-5",
   "language": "python",
   "name": "ml-book-5"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
